#ifndef										__PROCESSOR_H__
#define										__PROCESSOR_H__

#include									"IApi.h"
#include									"packet.h"
#include									"AModule.h"
#include									<map>
#include									"protocol.h"

class										PacketHandler;

class										Processor
{
public:
	Processor();
	~Processor();

private:
	IApi									*_api;
	std::map<ProtocolOperator, AModule*>	_module;

public:
	void									disconnect(unsigned int);
	void									setApi(IApi*);
	PacketHandler							*getPacketHandler();
	void									interpret(Packet*);
};

#endif // !__PROCESSOR_H__
